草庐IT

java - List.forEach 是用 Java 排序的吗?

全部标签

javascript - Knockout JS 在 foreach 绑定(bind)中调用 ViewModel 函数

让我们考虑一个使用knockout的View模型:vardata=[{id:1,name:"JohnDoe"},{id:2,name:""},{id:3,name:"PeterParker"}];varviewModel={items:ko.observableArray(data)};viewModel.showName=function(name){console.log(this);returnname&&name.length>0;};viewModel.removePerson=function(){console.log(this);};ko.applyBindings(v

javascript - xCharts 按星期几排序

我正试图解决xCharts的一个小问题。我想显示一个条形图,显示带有星期几的数字。我已经做到了这一点,但是我在让它以正确的顺序显示时遇到了问题。见下图:如您所见,星期几的顺序不正确。通过阅读他们网站上的文档,我可以看出它与提供选项sortX有关,所以我尝试了很多不同的东西,但它们对我来说并没有真正起作用。下面是我使用的代码:vardata3={"xScale":"ordinal","yScale":"linear","type":"bar","main":[{"className":".bstats","data":[{"x":"Monday","y":1},{"x":"Tuesday

javascript - Angular js foreach只返回数组中的最后一项

我尝试使用angular.forEach()从JSON返回每个项目对象并评估其值,但只返回最后一个项目。因此,我无法进行任何评估。有趣的是,如果我执行console.log(),它会逐一显示每一项。如何获取每个项目并对其进行评估?如果你知道更好的方法,请教我。JS(Angular):angular.module('bLiApp').controller('AddDataCtrl',['$scope','DataService',function($scope,DataService){DataService.getItems().success(function(data){$scop

javascript - 下划线 - 从已排序的对象数组中查找

Underscore提供函数sortBy来对对象数组进行排序。但是,一旦我有了这个排序数组,有没有办法使用二进制搜索来查找元素?函数find没有利用数组已排序的事实,而函数indexOf有,但它没有提供指定排序键的方法。我是不是漏掉了什么?是否有任何其他JS库可以轻松地做到这一点? 最佳答案 函数_.sortedIndex用于二进制搜索,但比您的目的更通用。我只想用它来构建一个sortedFind,例如:_.sortedFind=functionsortedFind(list,item,key){return(_.isEqual(i

javascript - Angular : chaining promises over forEach loop

我无法理解promise。我正在使用GoogleEarthAPI进行地址“游览”。游览只是一个持续大约一分钟的动画,一个完成后,下一个应该开始。这是我的巡视功能:vartourAddress=function(address){returntourService.getLatLong(address).then(function(coords){returntourService.getKmlForCoords(coords).then(function(kml){_ge.getTourPlayer().setTour(kml);_ge.getTourPlayer().play();v

javascript - 基于java脚本中嵌套对象数组中的键对列表进行排序的最佳方法

我有以下内容:varlist=[{"item":[{a:5,a1:6,a2:7},{b:3,b1:4,b2:2}]},{"item":[{a:1,a1:2,a2:3},{b:4,b1:5,b2:6}]},{"item":[{a:2,a1:7,a2:4},{b:3,b1:7,b2:1}]}];假设我有上面的变量list,我怎样才能对它进行排序,使得list中具有item键的所有直接对象>根据键(即"a1"或"b")按升序排序。请注意,它不会更改或重新排序list[x]["item"]中的列表,而只会更改list[x]中的直接项目。标准排序函数似乎只对数组中对象内的键进行排序,但我想根据位

javascript - 将 forEach() 与 promise 一起使用,同时在 .then() 链中访问先前的 promise 结果?

我有以下promise的功能:constajaxRequest=(url)=>{returnnewPromise(function(resolve,reject){axios.get(url).then((response)=>{//console.log(response);resolve(response);}).catch((error)=>{//console.log(error);reject();});});}constxmlParser=(xml)=>{let{data}=xml;returnnewPromise(function(resolve,reject){letp

javascript - D3 - 从 v3 升级到 v4 时,forEach 不是函数

我正在尝试升级this可堆叠条形图到v4。除了一件事,一切正常。当我过滤一个类别时,条形图不会落到x轴的起点。我收到一条错误消息:state.selectAll(...).forEachisnotafunction我已经尝试了多种方法,但我无法弄清楚这一点。这是损坏的代码:functionplotSingle(d){class_keep=d.id.split("id").pop();idx=legendClassArray.indexOf(class_keep);//eraseallbutselectedbarsbysettingopacityto0d3.selectAll(".bar

javascript - D3 排序函数总是传递未定义的参数

使用D32.4.2,我创建了许多路径元素,如下所示:for(vari=0;i它们都按预期绘制到屏幕上。稍后,当用户进行一些输入时,我想将其中一个放在最前面,所以我有一个事件处理程序可以执行此操作:varpathToHighlight=selectPath(pathIndex);varpaths=d3.selectAll("."+PATH_CLASS);paths.sort(function(a,b){if(a===pathToHighlight){return-1;}elseif(b===pathToHighlight){return1;}else{return0;}});在Chrom

javascript - 如何在 Chrome 打包应用程序的 list 中使用 "system_indicator"?

我正在尝试创建一个在系统菜单栏中带有图标的Chrome包应用程序,如下所述:https://docs.google.com/document/d/1QhhfR33Y28Yqnnoa_Sl3fnZK_mKtwt4dZe6kNyJ_MjU/edit,GoogleHangout应用程序可以实现此功能(这不是完全相同的行为),但我找不到任何好的文档来执行相同的操作。在GooglePackagedApp的manifest页面中,我们可以看到“system_indicator”字段。是我要找的吗?当我尝试将此字段设置为图标的url时,Chrome返回此错误:'system_indicator're